The present invention relates to a semiconductor memory device and an operation method thereof, more particularly, to a semiconductor memory device for randomizing data inputted from the outside and programming the randomized data and an operation method thereof.
In case that data is stored with specific distribution in a memory cell array in a program operation of a semiconductor memory device, reliability of the data may be deteriorated because interference between memory cells included in the memory cell array increases. Particularly, when the same data is stored concentrically in memory cells included in specific part of the memory cell array, potential difference may occur internally in the memory cell array and so data may be changed. To prevent the occurrence of this phenomenon, program data inputted from a host is randomized and the randomized data is programmed to the memory cell array.
The program data inputted through an input/output circuit is randomized, and then the randomized program data is inputted to a page buffer. Accordingly, in case that the program operation is performed by using the randomized program data, the program data inputted from a host is programmed randomly in the memory cell array. A read operation restores the randomized programmed data into original program data in reverse order of the randomizing steps performed in the program operation.
FIG. 1 is a block diagram illustrating a conventional semiconductor memory device.
In FIG. 1, a semiconductor memory device 10 includes an IO buffer 11, a random circuit 12, a column decoder 13, a page buffer section 14 and a memory cell array 15.
Input data inputted from the outside host through the IO buffer 11 is scrambled and outputted as random data by the random circuit 12 when a program operation is performed. The random data is stored in the page buffer section 14 through the column decoder 13, and the random data stored in the page buffer section 14 is programmed in the memory cell array 15.
The page buffer section 14 senses the data stored in the memory cell array in the read operation and stores temporarily the sensed data as read data. The column decoder 13 transmits the read data stored in the page buffer section 14 to the random circuit 12, and the random circuit 12 descrambles the read data in reverse order of steps in the scrambling operation. The descrambled data is outputted to the outside host through the IO buffer 11.
In the above conventional method, the data is to be randomized by the random circuit 12 when it is inputted through the IO buffer 11. However, margin for data input operation reduces due to a time for randomization operation according as operation speed of the semiconductor memory device increases.
In addition, in case that a partial data input operation of inputting data smaller than data capacity storable in one page of the memory cell array is performed, data “1” is assigned automatically and programmed in memory cells where the inputted data is not assigned in the page. In a read operation of the conventional method, even the data in the memory cells where the inputted data is not assigned may be restored into original data and outputted.
Furthermore, the host does not perform an operation of amending a part of data without outputting the data and storing the amended data in another memory block or another page when a copyback operation is performed. This is because the randomized data is generated through the randomization operation using the block address and the page address. That is, the randomized data may not be restored into original data if the block address and page address are changed.